package com.yifeng.repo.controller.excel.loader.dto;

import lombok.Data;

import java.util.Date;

/**
 * Created by daibing on 2022/12/29.
 */
@Data
public class DataTaskDto {
    /**
     * 任务标识
     * taskId: 业务Id，仅用做传递关联关系，回传给业务项目做业务主键
     * requestKey: 请求唯一值（比如导出筛选参数的md5值, 导入文件名的md5值），用作幂等避免重复操作，以及查询任务信息
     */
    private Long taskId;
    private String requestKey;
    private DataTaskTypeEnum type;

    /**
     * 任务文件：导入数据文件&导出模板文件url、导入错误文件&导出结果文件url、生成excel数据转存文件路径
     */
    private String dataFileUrl;
    private String dataResultUrl;
    private String dataDumpFilePath;

    /**
     * 任务进展：totalNumber是-1表示未知，finishedOffsetId支持String和Long，正确数量（finishedNumber - errorNumber）
     */
    private int totalNumber;
    private int finishedNumber;
    private String finishedOffsetId;
    private int lastSheetNo;
    private int errorNumber;
    private String errorMessage;
    private boolean totalFinished;
    private Date totalFinishedTime;

    /**
     * 任务归属：ownerName可以是hostName+ip
     */
    private Long ownerId;
    private String ownerName;
    private Date ownerTime;
    private Date refreshTime;

    /**
     * 任务时间
     */
    private Date createTime;
    private Date modifyTime;
}
